home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / include / scribus-ng / desaxe / saxiohelper.h < prev    next >
Encoding:
C/C++ Source or Header  |  2009-02-06  |  2.9 KB  |  152 lines

  1. #ifndef SAXHELPER_H
  2. #define SAXHELPER_H
  3.  
  4. #include "desaxe_conf.h"
  5. #include <QList>
  6. #include <QStack>
  7. #include <QStringList>
  8. #include <QVector>
  9.  
  10. class ScFace;
  11. class FPointArray;
  12.  
  13. Xml_string toXMLString(unsigned int val);
  14. Xml_string toXMLString(int val);
  15. Xml_string toXMLString(unsigned long val);
  16. Xml_string toXMLString(long val);
  17. Xml_string toXMLString(double val);
  18. Xml_string toXMLString(float val);
  19. Xml_string toXMLString(bool val);
  20. Xml_string toXMLString(const Xml_string& val);
  21.  
  22. Xml_string toXMLString(const ScFace& val);
  23. Xml_string toXMLString(const FPointArray& path);
  24.  
  25. Xml_string toXMLString(const QList<double>& doublelist);
  26. Xml_string toXMLString(const QList<float>& floatlist);
  27. Xml_string toXMLString(const QList<int>& intlist);
  28. Xml_string toXMLString(const QVector<double>& doublelist);
  29. Xml_string toXMLString(const QVector<float>& floatlist);
  30. Xml_string toXMLString(const QVector<int>& intlist);
  31. Xml_string toXMLString(const QStringList& list);
  32.  
  33. unsigned int parseUInt(const Xml_string& str);
  34. int parseInt(const Xml_string& str);
  35. unsigned long parseULong(const Xml_string& str);
  36. long parseLong(const Xml_string& str);
  37. double parseDouble(const Xml_string& str);
  38. float parseFloat(const Xml_string& str);
  39. bool parseBool(const Xml_string& str);
  40. QStringList parseStringList(const Xml_string& str);
  41. QList<double> parseDoubleList(const Xml_string& str);
  42. QList<int> parseIntList(const Xml_string& str);
  43. QVector<double> parseDoubleVector(const Xml_string& str);
  44. QVector<int> parseIntVector(const Xml_string& str);
  45. QStack<int> parseIntStack(const Xml_string& str);
  46.  
  47.  
  48. Xml_string mkXMLName(const QString& any);
  49.  
  50.  
  51. template<class ENUM>
  52. inline
  53. ENUM parseEnum(const Xml_string& str)
  54. {
  55.     return static_cast<ENUM>(str.toUInt());
  56. }
  57.  
  58.  
  59. template<class DATA>
  60. inline
  61. DATA parse(const Xml_string& str)
  62. {
  63.     return static_cast<DATA>(str);
  64. }
  65.  
  66. template<>
  67. inline
  68. const Xml_string& parse<const Xml_string&>(const Xml_string& str)
  69. {
  70.     return str;
  71. }
  72.  
  73. template<>
  74. inline
  75. Xml_string parse<Xml_string>(const Xml_string& str)
  76. {
  77.     return str;
  78. }
  79.  
  80. template<>
  81. inline
  82. unsigned int parse<unsigned int>(const Xml_string& str)
  83. {
  84.     return parseUInt(str);
  85. }
  86.  
  87. template<>
  88. inline
  89. int parse<int>(const Xml_string& str)
  90. {
  91.     return parseInt(str);
  92. }
  93.  
  94. template<>
  95. inline
  96. unsigned long parse<unsigned long>(const Xml_string& str)
  97. {
  98.     return parseULong(str);
  99. }
  100.  
  101. template<>
  102. inline
  103. long parse<long>(const Xml_string& str)
  104. {
  105.     return parseLong(str);
  106. }
  107.  
  108. template<>
  109. inline
  110. double parse<double>(const Xml_string& str)
  111. {
  112.     return parseDouble(str);
  113. }
  114.  
  115. template<>
  116. inline
  117. float parse<float>(const Xml_string& str)
  118. {
  119.     return parseFloat(str);
  120. }
  121.  
  122. template<>
  123. inline
  124. bool parse<bool>(const Xml_string& str)
  125. {
  126.     return parseBool(str);
  127. }
  128.  
  129. template<>
  130. inline
  131. QStringList parse<QStringList>(const Xml_string& str)
  132. {
  133.     return parseStringList(str);
  134. }
  135.  
  136. template<>
  137. inline
  138. QList<int> parse<QList<int> >(const Xml_string& str)
  139. {
  140.     return parseIntList(str);
  141. }
  142.  
  143. template<>
  144. inline
  145. QList<double> parse<QList<double> >(const Xml_string& str)
  146. {
  147.     return parseDoubleList(str);
  148. }
  149.  
  150.  
  151. #endif
  152.